vc 中 字符\"\\\"和\\\"\\\\\"的处理

来源:百度知道 编辑:UC知道 时间:2024/06/24 01:47:08
在编写程序时,得到文本文件的绝对路径,用fileDlg.GetPathName ()得到文件的绝对路径,我想添加一个文本进程打开刚才的文本文件,现在的问题是 程序中路径分割是用\"\\\\\"而不是刚才得到的绝对路径中的\"\\\",怎样才能将\"\\\"替换成\"\\\\\"?
我用了m_path.Replace(\"\\\",\"\\\\\");但是不管用。
::CreateProcess(NULL,_T("notepad.exe D:\\数据\\导线点.dat"),NULL,NULL,FALSE,NORMAL_PRIORITY_CLASS,NULL,NULL,&stinfo,&procinfo)
我想用这条语句用记事本打开D:\数据\导线点.dat,“D:\数据\导线点.dat”字符串是可以用fileDlg.GetPathName()得到的。但是CreateProcess语句中的需要“ D:\\数据\\导线点.dat”这样的字符串,所以我需要用Replace函数,或者别的什么方法。

首先谢谢晓风残月清杨柳,你的方法我用过,但是你的CString path值为"notepad.exe D:\数据\导线点.dat",::CreateProcess(NULL,"notepad.exe D:\\数据\\导线点.dat"... )这样才行的。所以我需要的path值为"notepad.exe D:\\数据\\导线点.dat" ......

你的答案我试过 刚开始我就是用的你的方法。不行,不过

不明白什么意思

fileDlg.GetPathName ()得到的路径是可以直接使用的
问题补充:
CString path = "notepad.exe";
path += " ";
path += fileDlg.GetPathName();
::CreateProcess(NULL,path ...
//
对补充问题的回答:大哥,我不知道你试过我告诉你的方法没有!